PCA算法用于人脸降维Python实现(吴恩达机器学习作业) |
您所在的位置:网站首页 › pca 人脸识别 › PCA算法用于人脸降维Python实现(吴恩达机器学习作业) |
PCA算法用于人脸降维Python实现
题目要求
步骤
数据集
PCA
实验过程
Python实现
问题和心得
问题
心得
题目要求
采用PCA算法对数据进行降维。 步骤 利用PCA对人脸进行降维,从1024维降到100维: (1) 均值归一化。 计算出每一维特征的均值𝜇𝑗 ,令 𝑥𝑗 = 𝑥𝑗 − 𝜇𝑗。如果特征是在不同的数量级上,还需要将其除以标准差。 (2) 计算协方差矩阵(covariance matrix)𝛴。 ∑ = 1/𝑚 ∑𝑖=1𝑛 𝑋𝑇𝑋,X中每一行是一个样本; m是样本数;X的大小是mn; ∑ 的大小是nn。 (3) 计算协方差矩阵𝜮的特征向量。 使用SVD分解:∑ = 𝑼𝑺𝑽T,直接使用如下代码:U, sigma, VT=np.linalg.svd(data) (4) 计算出主成分。 (5) 将数据投影到主成分方向。 𝒛 (𝒊) = 𝑼𝒓𝒆𝒅𝒖𝒄𝒆 𝑻 ∗ 𝒙 (𝒊),注意:此处的 𝒙(𝒊) 是均值归一化后的。 进行数据恢复,观察仅使用前100维主成分恢复得到的人脸图像。 数据集链接:ex7faces.mat 提取码:mjy7 PCA主成分分析用于数据降维。 实验过程原始的人脸大小32×32=1024维,一行数据是一个人脸, 将数据reshape成32×32,显示人脸图像其中的前100张人脸图: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |